package com.hxkj.service.wechat;

import com.hxkj.domain.po.AppletClassify;
import com.hxkj.domain.po.AppletClassifyTree;
import com.platform.common.domain.result.ResultPageStruct;
import com.platform.common.domain.to.PageTo;

import java.util.List;
import java.util.Map;

/**
 * @InterfaceName AppletClassifyService
 * @Description TODO
 * @Author Mr.zheng
 * @Date 2018/6/11 15:20
 * @Version 1.0
 */
public interface AppletClassifyService {
    
    /**
    * @author Mr.zheng
    * @Description saveClassify 新增文章分类
    * @Date 9:57 2018/6/14
    * @Param [appletClassify]
    * @return void
    **/
    void saveClassify(AppletClassify appletClassify) throws Exception;

    /**
    * @author Mr.zheng
    * @Description getClassifyList 获取所有文章分类列表
    * @Date 9:57 2018/6/14
    * @Param [appletClassify, pageParam]
    * @return com.platform.common.domain.result.ResultPageStruct<com.hxkj.domain.po.AppletClassify>
    **/
    ResultPageStruct<AppletClassify> getClassifyList(AppletClassify appletClassify, PageTo pageParam) throws Exception;

    /**
    * @author Mr.zheng
    * @Description getClassifyTreeList 获取所有文章分类树状列表
    * @Date 9:57 2018/6/14
    * @Param [appletClassify]
    * @return java.util.List<com.hxkj.domain.po.AppletClassifyTree>
    **/
    List<AppletClassifyTree> getClassifyTreeList(AppletClassify appletClassify) throws Exception;

    /**
    * @author Mr.zheng
    * @Description modifyClassify 修改文章分类
    * @Date 9:58 2018/6/14
    * @Param [appletClassify]
    * @return void
    **/
    void modifyClassify(AppletClassify appletClassify) throws Exception;

    /**
    * @author Mr.zheng
    * @Description removeClassify 删除文章分类
    * @Date 9:58 2018/6/14
    * @Param [appletClassify]
    * @return void
    **/
    void removeClassify(AppletClassify appletClassify) throws Exception;

    
    /**
    * @author Mr.zheng
    * @Description modifySortNum 修改文章分类排序
    * @Date 9:58 2018/6/14
    * @Param [map]
    * @return void
    **/
    void modifySortNum(Map<String, Object> map) throws Exception;

    
    /**
    * @author Mr.zheng
    * @Description getShowClassifyTreeList 获取状态为显示的文章分类树状结构
    * @Date 13:13 2018/6/14
    * @Param [appletClassify]
    * @return java.util.List<com.hxkj.domain.po.AppletClassifyTree>
    **/
    List<AppletClassifyTree> getShowClassifyTreeList(AppletClassify appletClassify) throws Exception;
}
